package com.scms.secondclass.service;

import java.util.List;
import com.scms.secondclass.domain.SignRecord;

/**
 * 签到记录Service接口
 */
public interface ISignRecordService 
{
    /**
     * 查询签到记录
     * 
     * @param signId 签到记录主键
     * @return 签到记录
     */
    public SignRecord selectSignRecordBySignId(Long signId);

    /**
     * 查询签到记录列表
     * 
     * @param signRecord 签到记录
     * @return 签到记录集合
     */
    public List<SignRecord> selectSignRecordList(SignRecord signRecord);

    /**
     * 新增签到记录
     * 
     * @param signRecord 签到记录
     * @return 结果
     */
    public int insertSignRecord(SignRecord signRecord);

    /**
     * 修改签到记录
     * 
     * @param signRecord 签到记录
     * @return 结果
     */
    public int updateSignRecord(SignRecord signRecord);

    /**
     * 批量删除签到记录
     * 
     * @param signIds 需要删除的签到记录主键集合
     * @return 结果
     */
    public int deleteSignRecordBySignIds(Long[] signIds);

    /**
     * 删除签到记录信息
     * 
     * @param signId 签到记录主键
     * @return 结果
     */
    public int deleteSignRecordBySignId(Long signId);
    
    /**
     * 根据报名ID查询签到记录
     * 
     * @param enrollmentId 报名ID
     * @return 签到记录
     */
    public SignRecord selectSignRecordByEnrollmentId(Long enrollmentId);
    
    /**
     * 根据活动ID查询签到记录列表
     * 
     * @param activityId 活动ID
     * @return 签到记录集合
     */
    public List<SignRecord> selectSignRecordByActivityId(Long activityId);
}